// Tool.h: interface for the CTool class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_TOOL_H__28D852B1_BA20_4CA9_BB04_E09808359AA5__INCLUDED_)
#define AFX_TOOL_H__28D852B1_BA20_4CA9_BB04_E09808359AA5__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// base64 tables	
static char basis_64[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
#define CHAR64(c)  (((c) < 0 || (c) > 127) ? -1 : index_64[(c)])
static signed char index_64[128] = {	
	-1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1,	
		-1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1,	
		-1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,62, -1,-1,-1,63,	
		52,53,54,55, 56,57,58,59, 60,61,-1,-1, -1,-1,-1,-1,	
		-1, 0, 1, 2,  3, 4, 5, 6,  7, 8, 9,10, 11,12,13,14,	
		15,16,17,18, 19,20,21,22, 23,24,25,-1, -1,-1,-1,-1,	
		-1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40,	
		41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1	
} ;



class CTool  
{
public:
	CTool();
	virtual ~CTool();

	unsigned char *base64_decode(const char *value, int *rlen)	;
	char *base64_encode(const unsigned char *value, int vlen) ;

	

};

#endif // !defined(AFX_TOOL_H__28D852B1_BA20_4CA9_BB04_E09808359AA5__INCLUDED_)
